0 REM" ****************************** 1 [143]" ** ** 2 REM" * [211]ON OF [196]ESTROYER * 3 [143]" * ---------------- * 4 REM" * [195]64 - [214]ERSION 1.19 * 5 [143]" * VALNTWURF UND (null)ROGRAMM VON * 6 REM" * [193]NDREAS [215]URF * 7 [143]" * * 8 REM" ** ** 9 [143]" ****************************** 10 : 11 : 15 GOSUB 10000:REM TITLE 20 GOSUB 20000:REM HELPPAGE 30 GOSUB 30000:REM SET VARS 35 GOSUB 40000:REM PARAMS 40 GOSUB 50000:REM WORKFIELD 45 AW$="SLH[133][134][135][136][137][138][140][145][157]":DIM FU$(LEN(AW$)) 47 DW$="":FORI=1 TO LEN(AW$):READ FU$(I):NEXT 50 POKE VI,PEEK(VI) OR 128 60 POKE 198,0:WAIT 198,1:GET T$ 70 POKE VI,PEEK(VI)AND NOT 128 80 FOR I=1 TO LEN(AW$):IF T$=MID$(AW$,I,1)THEN 87 85 NEXT:GOTO 50 87 PRINT DW$"[198]UNCTION: "FU$(I)"[146] [154]" 90 ON I GOSUB 4000,5000,200,500,800,1000,1300,1600,1900,2500,3000,3100,3200,3300 95 GOTO 50 200 GOSUB 20000:GOSUB 50000:RETURN 500 POKE VI,42:RETURN 800 POKE VI,46:RETURN 1000 FOR I=0 TO 20:IF PEEK(VI+I*40)<>46 AND PEEK(VI+I*40)<>42 THEN 1010 1005 POKE VI+I*40,42:NEXT 1010 FOR I=1 TO 20:IF PEEK(VI-I*40)<>46 AND PEEK(VI-I*40)<>42 THEN 1020 1015 POKE VI-I*40,42:NEXT 1020 RETURN 1300 FOR I=0 TO 20:IF PEEK(VI+I*40)<>46 AND PEEK(VI+I*40)<>42 THEN 1310 1305 POKE VI+I*40,46:NEXT 1310 FOR I=1 TO 20:IF PEEK(VI-I*40)<>46 AND PEEK(VI-I*40)<>42 THEN 1320 1315 POKE VI-I*40,46:NEXT 1320 RETURN 1600 OPEN 15,GN,15:OPEN 2,GN,2,"#":V=1868 1605 FOR T=0 TO 34:FOR S=0 TO 20 1610 P=PEEK(V-(S*40)+T):POKE V-(S*40)+T,PEEK(V-(S*40)+T) OR 128 1620 IF P<>42 THEN 1665 1630 PRINT#15,"U1:"2;0;T+1;S 1640 PRINT#15,"M-W";CHR$(ME);CHR$(0);CHR$(1);CHR$(KO) 1650 PRINT#15,"U2:"2;0;T+1;S 1660 PRINT#15,"M-W";CHR$(ME);CHR$(0);CHR$(1);CHR$(KN) 1665 POKE V-(S*40)+T,PEEK(V-(S*40)+T) AND 127 1666 GET T$:IF T$<>"*" THEN 1670 1668 PRINTDW$;" [198]UNCTION ABORTED [146][154] ":CLOSE2:CLOSE15:RETURN 1670 NEXT S,T:INPUT#15,F1$,F2$,F3$,F4$:PRINT""F1$" "F2$" "F3$" "F4$ 1680 CLOSE 2:CLOSE 15:RETURN 1900 OPEN 15,GN,15:OPEN 2,GN,2,"#":V=1868 1905 FOR T=0 TO 34:FOR S=0 TO 20 1910 P=PEEK(V-(S*40)+T):POKE V-(S*40)+T,PEEK(V-(S*40)+T) OR 128 1920 IF P<>42 THEN 1945 1925 PRINT#15,"M-W";CHR$(ME);CHR$(0);CHR$(1);CHR$(KO) 1930 PRINT#15,"U1:"2;0;T+1;S 1935 PRINT#15,"M-W";CHR$(ME);CHR$(0);CHR$(1);CHR$(KN) 1940 PRINT#15,"U2:"2;0;T+1;S 1945 POKE V-(S*40)+T,PEEK(V-(S*40)+T) AND 127 1950 GET T$:IF T$<>"*" THEN 1970 1960 PRINTDW$;" [198]UNCTION ABORTED [146][154] ":CLOSE2:CLOSE15:RETURN 1970 NEXT S,T:INPUT#15,F1$,F2$,F3$,F4$:PRINT""F1$" "F2$" "F3$" "F4$ 1980 CLOSE 2:CLOSE 15:RETURN 2100 GOSUB 40000:GOTO 50 2500 PRINT DW$"  [199]OODBYE ":END 3000 IF PEEK(VI-40)=42 OR PEEK(VI-40)=46THEN VI=VI-40:RETURN 3005 RETURN 3100 IF PEEK(VI+40)=42 OR PEEK(VI+40)=46THEN VI=VI+40:RETURN 3105 RETURN 3200 IF PEEK(VI-1)=42 OR PEEK(VI-1)=46 THEN VI=VI-1:RETURN 3205 RETURN 3300 IF PEEK(VI+1)=42 OR PEEK(VI+1)=46 THEN VI=VI+1:RETURN 3305 RETURN 4000 REM ** SAVE WORKPAGE ** 4010 : 4020 OPEN 15,GN,15:V=1868 4030 PRINT#15,"S:SOD.TEMP":OPEN 2,8,2,"SOD.TEMP,U,W":PRINT#2,GN:PRINT#2,KO 4040 FOR T=0 TO 34:FOR S=0 TO 20 4050 PRINT#2,CHR$(PEEK(V-(S*40)+T)); 4060 NEXT S,T:CLOSE 2 4070 INPUT#15,F1$,F2$,F3$,F4$:CLOSE 15 4080 PRINT""F1$" "F2$" "F3$" "F4$ 4090 RETURN 5000 REM ** LOAD WORKPAGE ** 5010 : 5020 OPEN 15,GN,15:V=1868:OPEN 2,GN,2,"SOD.TEMP,U,R":INPUT#2,GN:INPUT#2,KO 5030 FOR T=0 TO 34:FOR S=0 TO 20 5040 GET#2,A$:A$=A$+CHR$(0) 5050 POKE V-(S*40)+T,ASC(A$) 5060 NEXT S,T:CLOSE 2 5070 INPUT#15,F1$,F2$,F3$,F4$:CLOSE 15 5080 PRINT""F1$" "F2$" "F3$" "F4$ 5090 RETURN 9999 STOP 10000 REM ** AUSGABE DES KOPFBLATTES ** 10001 REM ** UND VORBEREITEN DES ** 10002 REM ** DES BILDSCHIRMS ** 10003 : 10010 POKE 646,PEEK(53280):PRINT"[147]"CHR$(9);CHR$(14);CHR$(8); 10020 PRINT" [211] [207] [206] [207] [198] [196] [197] [211] [212] [210] [207] [217] [197] [210] " 10030 PRINT"[145] ================================= " 10040 PRINT"[145] " 10050 PRINT"[145] *** *** " 10060 PRINT" [197]IN [208]ROGRAMM ZUM [218]ERSTOEREN UND" 10070 PRINT" [215]IEDERHERSTELLEN VON [196]ISK-[194]LOCKS." 10075 PRINT" [196]ER [201]NHALT DIESER [194]LOCKS BLEIBT" 10077 PRINT" VOLLSTAENDIG ERHALTEN." 10080 PRINT" *** [196]RUECKE [210][197][212][213][210][206][146] *** 10090 [161] T$:[139] T$[179][177][199](13) [167] 10090 10095 [142] 10096 : 10097 : 20000 [143] ** AUSGABE DES HELPBLATTES ** 20003 : 20020 [153]"LOAD (null) (null) (null) (null) ASC STR$ VAL (null) (null) (null) (null) (null) VAL (null) " 20030 [153]"ON ================================= " 20040 [153]"ON LEFT$ELP - (null)AGE " 20050 [153]" ATNLLOCATE PEEKLOCK =>  ASC1 WAIT 20060 PRINT" [198]REE [194]LOCK =>  [198]3 [146] 20070 [153]" ATNLLOCATE (null)RACK =>  ASC5 WAIT 20080 PRINT" [198]REE [212]RACK =>  [198]7 [146] 20090 [153]" STR$ESTROY STR$ISK =>  ASC2 WAIT 20100 PRINT" [210]EBUILD [196]ISK =>  [198]4 [146] 20110 [153]" ATNBORT ASCUNCTION =>  * WAIT 20115 PRINT" [200]ELP-[208]AGE =>  H [146] 20117 [153]" (null)AVE (null)AGE =>  S WAIT 20118 PRINT" [204]OAD [208]AGE =>  L [146] 20120 [153]" (null)UIT (null)ROGRAM =>  ASC8 WAIT 20140 PRINT" *** [208]RESS [210][197][212][213][210][206][146] ***" 20150 WAIT 198,1:GET T$:IF T$<>CHR$(13) THEN 20150 20160 RETURN 20161 : 20162 : 30000 REM ** SETZEN DER PARAMETER ** 30001 : 30010 GN=8:KO=139:VI=1868:ME=71:KN=7:RETURN 30011 : 30012 : 40000 REM ** ANPASSEN DER PARAMETER ** 40001 : 40010 PRINT"[147] [211] [207] [206] [207] [198] [196] [197] [211] [212] [210] [207] [217] [197] [210] " 40020 PRINT"[145] ================================= " 40030 PRINT"[145] [211]ET [208]ARAMETERS " 40040 OPEN 1,0:PRINT"" 40050 PRINT" [196]EVICE # :"GN"[145]":PRINT"";:INPUT#1,GN:PRINT"" 40070 PRINT" [195]ONSTANT :"KO"[145]":PRINT"";:INPUT#1,KO:PRINT"" 40080 CLOSE 1:IF GN<8 OR GN>14 THEN 40010 40100 IF KO<0 OR KO>255 THEN 40010 40110 RETURN 50000 PRINT"[147]"; 50005 PRINT" [201]/[207]: 00 OK 00 00 [145]":PRINT"[145]"; 50010 TR$=" ..................................." 50020 FOR I=0 TO 20:PRINT TR$:NEXT 50030 PRINT"[216][216][216][216][216][216][216][216][216][216][216][216][216][216][216][216][216][216] 50035 [153]"(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null) 50040 PRINT"[216][216][216][216][216][216][216][216][216][216][216] 50050 [153]"(null)(null)(null)(null)(null) 50060 PRINT"";:FOR I=20 TO 0 STEP-1:PRINT" "I:NEXT 50070 PRINT"12345678901234567890123456789012345" 50080 PRINT" [212]RACKS[146] 11111111112222222222333333" 50090 PRINT"":TR$="[211]ECTORS" 50095 FOR I=1 TO LEN(TR$):PRINT""MID$(TR$,I,1):NEXT:RETURN 63040 : 63050 REM ** DATA'S FUER FUNKTIONEN ** 63060 : 63065 DATA "[211]AVE [208]AGE","[204]OAD [208]AGE" 63070 DATA "[200]ELP-[208]AGE","[193]LLOCATE [194]LOCK","[198]REE [194]LOCK","[193]LLOCATE [212]RACK" 63080 DATA "[198]REE [212]RACK","[196]ESTROY [196]ISK","[210]EBUILD [196]ISK" 63090 DATA "[209]UIT [208]ROGRAM","UP","DOWN","LEFT","RIGHT"